home *** CD-ROM | disk | FTP | other *** search
/ NOVA - For the NeXT Workstation / NOVA - For the NeXT Workstation.iso / Newsletters / GEnieUnixNews / unxnl-03.92 < prev    next >
Text File  |  1992-12-27  |  26KB  |  572 lines

  1.                            
  2.           _  _  _   _  _   _
  3.          // // //| // // \//     N E W S
  4.         //_// // |// //  /\\     Vol 3, Issue 3 - March 1992
  5.       R o u n d T a b l e (tm)
  6.                                  
  7.    Items of interest to participants of the GEnie Unix RoundTable
  8.                               
  9.        The RoundTable SysOps are:
  10.        Andy Finkenstadt....ANDY       Rick Mobley.........LRARK
  11.        Gary Smith..........GARS       Brian Riley.........DELPHI
  12.                    All Unix SysOps.....UNIXSYSOPS$
  13.    We strongly encourage you to contact any or all of us if you have -ANY-
  14.  comments or suggestions. This is -YOUR- RoundTable. We are here to make
  15.  your participation as pleasant and beneficial as possible.
  16.               
  17.  ED: editor notes - Thanks
  18.  --
  19.  
  20.    Sometimes in the rush of things we forget to look around and see how 
  21.  things are going. Obviously, the architects of Unix thought this might
  22.  be a reasonable plan when they gave us tools like fsk().
  23.   
  24.    It is a fact, good or bad, that Rick (LRARK) and I are the only SysOps 
  25.  remaining from the original group that shepherded the Unix RoundTable into
  26.  existance in mid-1989. Quite frankly, we didn't know what kind of future
  27.  we had with GEnie. 
  28.  
  29.    The SysOp crew is not the only thing that has changed. The user base has
  30.  grown, and much to our delight it has retained the mix of novice, curious
  31.  onlooker and seasoned wizzard we witnessed in our beginnings. What has
  32.  changed dramatically is the depth of information available in both the
  33.  Bulletin Board and Library areas.  The credit for this belongs to loyal
  34.  and sharing participants. That's you! Whoever you are, if you are reading
  35.  this editorial, you are party to the success you are benefitting from and
  36.  on behalf of the entire Unix RoundTable we thank you.
  37.   
  38.    The NeXT users continue to lead the way in the library. If you want to
  39.  see your platform enjoy the same growth and recognition you are going to
  40.  have to follow their example.
  41.  
  42.  --
  43.                     
  44.  Lead Sysop Notes                           Andrew Finkenstadt
  45.  ----------------                                  Chief Sysop
  46.  
  47.  As this article is being written I have just thought over the past few
  48.  months of our expanded activity in the Unix RoundTable.
  49.  
  50.  Our real time conferences are about to expand - you will be able to
  51.  find persons sharing the Unix interest more frequently.  The software
  52.  libraries have burgeoned with an influx of new material from the
  53.  archives:  NeXT specific files are growing thanks to the work of Eric
  54.  Tremblay, Frank Cupo, and others.  A free version of Unix called
  55.  LINUX has been uploaded by member Mike Nolan.  We've expanded our
  56.  Bulletin Board by 5 additional categories to include Sun, NeXT, the
  57.  Coherent Operating System, Sequent, and a new "let's relax" category
  58.  for the lighter side of Unix.
  59.  
  60.  And more is on the way.
  61.  
  62.  If you have any suggestions for areas that we should cover to make
  63.  your participation in the Unix RoundTable more pleasant, please don't
  64.  be bashful.  We'd love to hear from you, just send some mail to the
  65.  GE Mail address UNIX$ or directly to any of the Sysops:
  66.                ANDY    Andrew Finkenstadt
  67.                GARS    Gary Smith
  68.                LRARK   Rick Mobley
  69.                DELPHI  Brian Riley
  70.  and our newest SysOp  Mike Nolan
  71.  
  72.  Thank you for your patronage.
  73.  
  74.  -Andy
  75.   Unix RoundTable Chief Sysop
  76.  
  77.  Upload Contest Winners for March (ANDY)
  78.  --------------------------------
  79.              
  80.  The Unix RoundTable is proud to announce the winner(s) of the
  81.  February 1992 Upload Contest.  
  82.      
  83.  To:     E.TREMBLAY2                     Eric Tremblay
  84.  
  85.  Sub: Upload Contest :)
  86.  
  87.  Eric,  Congratulations!  You have won both sides of our upload
  88.  contest again: both for number of files and quantity/bytes of files.
  89.  Let me know when you want your next two free days. :grrin:
  90.  -Andy
  91.  
  92.  Sub: Upload Contest Data & Winner
  93.  
  94.  UPLOADER       COUNT(0) SUM(FILE_SIZE)
  95.  ------------ ---------- --------------
  96.  ANDY                  3         595072
  97.  DELPHI                1          16768
  98.  E.TREMBLAY2          30        4067072
  99.  F.CUPO               10        1476352
  100.  GARS                126        5908992 <-- disqualified, SysOp
  101.  I.SHAPIRO3            5        2087424
  102.  J.MURPHY3             1          25216
  103.  M.NOLAN              24        3235072
  104.  
  105.  System Handy Hint:  Do you have a boot diskette/tape  (GARS)
  106.  -----------------
  107.  
  108.    Don't be too quick to answer that in the affirmative if your boot is
  109.  the standard boot diskette shipped with the system. This is a "bare bones"
  110.  version only, and does not contain spaecial device files - like the one
  111.  for your 'backup' tape drive.
  112.   
  113.    If your backup boot is the standard boot diskette you are looking at a
  114.  very long rebuild session, and some systems make it even more tedious by
  115.  requiring you to re-enter the serial number of your software. Presume for
  116.  a moment you can live with all this aggrivation, then ask yourself when 
  117.  was the last time you verified the boot diskette was readable.
  118.   
  119.    Do yourself a favor and create your own boot diskette that contains the
  120.  latest level of your Unix kernel and that driver for the all those system
  121.  and application files.
  122.  
  123.  WHO short bios
  124.  ---
  125.  This issue we get a closer look at a couple of our new on-line support gurus.
  126.  These are the individuals who have graciously volunteered to man the special
  127.  platform specific areas.
  128.    
  129.  Peter Wargo (PSYCLOPS) Sun wizzard
  130.            
  131.  I began my road down computer nerddom when I transferred from
  132.  RPI (Electrical Engineering) to Clarkson University
  133.  (Technical Communications).  While I was doing this, that
  134.  and the other thing, I strayed from my Macintosh to MS-DOS -
  135.  lured, it seemed, by the cryptic command prompt.
  136.  
  137.  Not satisfied with a C:\> prompt, I was lured into UNIX when
  138.  the University PR department (where I worked) was privy to a
  139.  gift of 15 Sun 2/120's.  A master Unix Guru, Rob Logan,
  140.  taught me how to turn 15 piles of junk into 7 piles of
  141.  working junk, and the rest is history.  I learned, and
  142.  prospered.  Today I work at Enable Software, Inc. (More DOS
  143.  crap) where I have my lovely SPARCstation IPC to keep me
  144.  company.  (Used for Interleaf)
  145.  
  146.  One final note: My qualification for being the "Sun God" (as
  147.  such it is...) is this:
  148.  I *ACTUALLY* admit to owning my own personal Sun 2/120!!!
  149.  
  150.  Scott Ingram (SINGRAM) Coherent wizzard
  151.  
  152.  Scott Ingram:  Native of the Pacific Northwest, likes sailing and
  153.  computers almost as much as cooking and best of all, eating.
  154.  Started programming computers around 1974 on a Model 33 tty attached
  155.  to an IBM 360.  Spent the last 10 years playing with the hardware
  156.  side of things as an electronic warfare specialist with the Navy and
  157.  Coast Guard:  Breaking things at long distance is my specialty.
  158.  
  159.  Became interested in multitasking and Unix like environments when I
  160.  got frustrated with the ease that you can crash DOS when it has
  161.  unusual hardware to contend with.  (Okay, I *KNOW* that it probably
  162.  was't a good idea to solder that Triumph Standard 2 liter with the
  163.  twin Zenith sidedraft carburetors on, but it really did look like
  164.  the reactor plant interface should have worked.)  In looking for an
  165.  economical alternative to current implementations of Unix, came
  166.  across Coherent, which is really fun to have at the house, in spite
  167.  of the fact that I really don't care for the C programming language
  168.  at all.  (My military experience with Ada has left me with a strong
  169.  predilection for Ada and Modula-2.)  Now maybe that leftover Pontiac
  170.  that my brother has-ever seen a 386SX do 100 knots in 2 foot seas?
  171.  
  172.  
  173.  FAST and NASTY, DOWN  and  DIRTY:  quick  fix scripts that do something
  174.  --------------------------------
  175.                     
  176.  Subject: Four line 'today' program
  177.              
  178.  Subject: Re: Show day of month shell.
  179.  Message-ID: <5610@public.BTR.COM>
  180.  Date: 16 Feb 92 08:30:59 GMT
  181.  References: <qPs1FB1w164w@tsf.UUCP>
  182.  
  183.  In article <qPs1FB1w164w@tsf.UUCP> gnr@tsf.UUCP (GodNet Raider) writes:
  184.  >    The following file will print a calender on the screen with the
  185.  >present day hi-lighted on ansi terms (I know a 'c' program would be faster
  186.  >but just wanted to play with shell scripts).
  187.  >[...]
  188.  
  189.  Lawdy.  I've enclosed a 4-liner (not counting the comments) considerably more
  190.  portable due to use of "tput" (so as to work with any terminal with which one
  191.  has identified to one's system).  The comments are mine regarding fixing a bug
  192.  in the original version of the script as found in "Tricks of the UNIX Masters".
  193.  
  194.  Thad Floryan [ thad@btr.com (OR) {decwrl, mips, fernwood}!btr!thad ]
  195.  
  196.  -------------------- begin enclosure
  197.  
  198.  # @(#) today v1.1  Calendar with today highlighted; based on TUM pg.167
  199.  #
  200.  # output of `date` is: Thu Dec  1  05:47:14 PST 1988
  201.  #                      {1} {2} {3}   {4}    {5}  {6}
  202.  #
  203.  # the original code in TUM (Tricks of the Unix Masters) was flawed in that
  204.  # a day of 1 (for example) would cause substitution in all numbers beginning
  205.  # with a 1.  The modified code (below) prepends and appends a space to each
  206.  # line to permit an exact match in the regexp search for the day value.
  207.  #
  208.  # If YOUR version of "cal" requires the month and year to produce the single
  209.  # month calender, then alter the last line to start thusly:
  210.  #
  211.  #    cal ${2} ${6} | ...
  212.  #
  213.  # If your version of "cal" requires a numeric month number, then some other
  214.  # technique will be required (to convert, say, "Dec" to "12").
  215.  
  216.  set `date`
  217.  
  218.  RVR=`tput smso`
  219.  NORM=`tput rmso`
  220.  cal | sed  -e "s/^/ /" -e "s/$/ /" -e "s/ ${3} /${RVR} ${3} ${NORM}/"
  221.  
  222.  #------------------- end enclosure
  223.  
  224.  TUTORIALS:
  225.  =========
  226.  
  227.  bin/sh part 2   Rick Mobley (LRARK)
  228.  ------             
  229.  
  230.  This is the second part of this series. In the first part we covered most
  231.  of the basics. If you missed, I suggest you go back and review them before
  232.  continuing to press forward. The basics are important and will help you
  233.  discover the heart of this and any other sequence.
  234.  
  235.  So let go!
  236.  
  237.  As each command is executed the following occurs. First the shell has to
  238.  determine whether the command is built-in, a defined function or an external
  239.  executable file. Other than additional processes, which are spawned as needed,
  240.  commands are executed in a similar manner. It is important to note here that
  241.  the order of execution is as follows: Built-in commands are executed first, if
  242.  found, before searching elsewhere. Second would be a defined function that
  243.  you have included as a part of your script. Third would be an external 
  244.  executable file. This executable file can be a compiled 'C' program, or even
  245.  another script that has the --x (executable) bit set. See 'chmod' for more
  246.  information on this. 
  247.  
  248.  The following should hold true for most systems, but I'm sure there will be
  249.  exceptions. Normal searches for externals will be /bin, /usr/bin, /etc and
  250.  finally in your current directory. The exception here will be if you append
  251.  the path when you invoke the script, ie /usr/rick/makeit. This will cause the
  252.  script to only search /usr/rick for its externals.
  253.  
  254.  If you put your program in the background (terminated with a &) signals such
  255.  as INTERRUPT and QUIT will be ignored. You will have to find the process-id
  256.  by running 'ps' and issuing a 'kill ##', where ## is the id of our process,
  257.  unless it has terminated without intervention. See 'trap' for more information
  258.  on signals for the shells.
  259.  
  260.  Command parameters are often file names. Here are a list of special
  261.  pattern-matching parameters that you will find useful.
  262.  
  263.  *    Matches any string, including the null string.
  264.   
  265.  ?    Matches any one character.
  266.  
  267.  [...]    Matches any of the characters enclosed in square brackets.
  268.  
  269.  [!...]    Matches any character other than those enclosed in brackets.
  270.  
  271.  I find these useful, even from a command line. For instance, if I wish
  272.  to use cpio to archive my directory to tape. I can issue a command like:
  273.  
  274.  find . -print | cpio -ocvB >/dev/tape
  275.  
  276.  Or if I wish to view several files that have common names, I can issue:
  277.  
  278.  less *.txt or
  279.  less arc* or
  280.  less plug[1,2,3].doc or even
  281.  less perl.patch[0-9]
  282.  
  283.  Be careful when you expand filenames as destructive gremlins lie waiting
  284.  for you to mess up. Can you imagine what 'rm *' might do! Please don't try
  285.  this at home, alone and without good reliable backups. There, I've warned you
  286.  now!
  287.  
  288.  We can assign values or strings to variables to make our program more robust.
  289.  Here we need to learn something about variable substitution. For instance:
  290.  
  291.  stars=***** assigns 5 asterisks to a variable called stars, and referred to
  292.  as $stars in our scripts. However, if we put single quotes around our variable
  293.  $stars, substitution will not be performed. Try:
  294.  
  295.  echo '$stars'
  296.  
  297.  and see if you don't agree. Substitution takes place right to left sometimes
  298.  surprising you with unwanted results if you embed variables in other variables.
  299.  Parameters are passed from shell to shell by using the built-in 'export'
  300.  command. To see what your shell currently knows about, enter 'export' at the
  301.  command line. To get a list of name-value pairs in the current environment,
  302.  enter 'env' at the command line. To see all assigned variables, enter 'set' at
  303.  the command line. These variables can be useful, and are often times used
  304.  to hold information that will be processed later in the script. Some variables
  305.  you may see that the shell uses frequently is HOME, MAIL, PATH, PS1, PS2 and
  306.  IFS. Most of these are set in your .profile each time you log in. 
  307.  
  308.  I sometimes make use of these variables while reading usenet news. I can be
  309.  deep down in my directory tree and save a file to my HOME directory by
  310.  issuing a command like:
  311.  
  312.  mv reset.c $HOME or
  313.  cp makeit $HOME/bin/makeit_new
  314.  
  315.  The first command moves a file to my HOME directory, otherwise /usr1/rick
  316.  whereas, the second command copies a file to my bin directory and renames it
  317.  as well, otherwise /usr1/rick/bin/makeit_new.
  318.  
  319.  Lets end this issue with some special variables. There are some useful
  320.  variables that are only settable by the shell. These are:
  321.  
  322.  $#    The number of positional parameters passed to the shell, not counting
  323.      the name of the shell procedure itself.
  324.  
  325.  $?    The exit value of the last command executed. (Discussed earlier)
  326.  
  327.  $$    The process number of the current process.
  328.  
  329.  $!    The process number of the last process run in the background.
  330.  
  331.  $-    A string consisting of the names of the execution flags currently
  332.      set in the shell.
  333.  
  334.  You can use these to get creative. If you wanted to create a temporary file
  335.  to hold some garbage. You could set a variable with a command such as:
  336.  
  337.  temp=$HOME/temp/$$
  338.  
  339.  Then use it to store your files:
  340.  
  341.  ls >$temp
  342.  
  343.  Then remove your temp file when your work is completed:
  344.  
  345.  rm $temp
  346.  
  347.  In the next issue I will continue with command substitution and begin to
  348.  experiment with some flow control commands. From the command line you can
  349.  cut down on your work and achieve some extraordinary results.
  350.  
  351.  Ricky Mobley [lrark]
  352.  Little Rock, AR
  353.  
  354.  
  355.   vi - part 2, basic edits  (GARS) Gary Smith
  356.   ==   ------  -----------
  357.                               
  358.     A tutorial on the Unix visual text editor from the GEnie Unix RoundTable
  359.                                 
  360.    -- abstract --
  361.                          
  362.     Part 1 provided an introduction to vi and gave a quick start overview so
  363.   neophytes could use the power of vi() immediately, even if limited to basic
  364.   edit functions. 
  365.                    
  366.      In Part 2 (this session) we are going to cleanup our test file using the
  367.   tools introduced in Part 1, and elaborate on shortcuts and develope work
  368.   strategies that will unfold more of the power hidden within vi. 
  369.           
  370.     I am going to make an observation now, that at first seems absurd; but as
  371.   we progress in our understanding of vi I hope you will come to realize the
  372.   full significance of this statement.  
  373.     "It is entirely possible, sometimes even desirable, to complete a full
  374.      Unix session and never leave vi." You can run commands, call processes
  375.      and manage your entire Unix environment from within vi. Why would you
  376.      ever want to do such a thing? Consider editing a process, interactively
  377.      testing and debugging, and making corrections on the fly... That might
  378.      be a reason.
  379.       
  380.   -- recap --             
  381.                          
  382.   - vi is modal. 
  383.     There two operating modes: 'text entry' and 'command' mode.
  384.     The _normal_ mode for vi is the command mode. This is the initial state.
  385.     Text entry mode is accessed from the command mode when you wish to type
  386.     in, insert or replace existing text. To exit the text entry mode you
  387.     press the ESCape key.
  388.                               
  389.   - cursor control (from the command mode)
  390.     If your arrow keys do not move the cursor as expected and your terminal
  391.     is correctly identified _or_ if you just prefer using generic keys these
  392.     are the letter keys associated with cursor movement.
  393.        h - move the cursor left one character (so will backspace)
  394.        j - move the cursor down one line
  395.        k - move the cursor up one line
  396.        l - move the cursor right one character (so will spacebar)
  397.                             
  398.     To move the cursor more than one position preceed the cursor key (letter or
  399.     arrow) with the number of positions you wish to move.
  400.                            
  401.        ie: 3j will jump the cursor down three lines.
  402.            2k will jump the cursor up two lines 
  403.                                        
  404.     vi also provides you with some handy one keystroke cursor jumps.
  405.                     
  406.        0 (zero) - will jump to the beginning of the current line
  407.        $ - will jump to the end of the current line
  408.        G - will jump to the first character last line of the file
  409.                       
  410.    - adding text
  411.                      
  412.   We have six basic ways to insert text, all of them mnemonic.
  413.                                   
  414.        i - (i)nsert text before the cursor
  415.        I - (I)nsert text at the beginning of the current line
  416.        a - (a)ppend text after the cursor
  417.        A - (A)ppend text at the end of the current line
  418.        o - (o)pen a line one line below the current line
  419.        O - (O)pen a line one line above the current line
  420.          
  421.   -- first edit session --
  422.                       
  423.     If you did all the exercises called for in Part 1, you have a file (we
  424.   named test) that looks like this:
  425.                     
  426.        This is a test file to be used for procticing various
  427.        commands using the vi editer.
  428.                    
  429.        As we insert more text we insert more text we also
  430.        further complicat the file and add to possibilities
  431.        for edit practice.
  432.               
  433.        Later we will expand beyond one screen to test various
  434.        functions such as search and scrolling.
  435.             
  436.        This is one more line of text to mess with added with the o command.
  437.        ~
  438.        ~
  439.        ~
  440.        ~
  441.        "test" [New file]
  442.          
  443.      Since you saved this file at the end of Part 1, it's time for us to call
  444.   it, by typing:
  445.      
  446.     vi test
  447.    
  448.   The file will scroll onto the screen just as we left it with one exception.
  449.   The status line now says:
  450.    
  451.    "test" 12 lines, 464 characters
  452.    
  453.   Don't worry if you have a slightly different line or character count. Spaces
  454.   and blanks are counted, as well as visible characters and lines. What you
  455.   should be concerned with is the body of the file that we will be editing.
  456.    
  457.     Notice also that your cursor is at the top of the file. This is quite the
  458.   opposite from ex(), which opens a file from the bottom. Remember, vi and ex
  459.   are completely inter-related. vi is actually the (vi)sual command of ex. We
  460.   will be using ex commands, so get accustomed to my references to it. If you
  461.   want to confirm how ex opens a file, close test now by typing a colon, then
  462.   at the colon prompt type :q! <cr>    (<cr> implies Carriage Return)
  463.      
  464.     Now open the file using ex, by typing ex test. You will get the same status
  465.   line as before, with no visual text and a colon prompt. At the colon prompt
  466.   type  :vi <cr> and notice you will get your screen of text, with tildes
  467.   marking empty (as opposed to blank) lines, but your cursor is at the bottom
  468.   of the file.
  469.    
  470.     You can place the cursor back at the top by typing 1G <cr>. This tells vi
  471.   to move the cursor to line number x. 3G = line 3, 15G = line 15. Also,
  472.   remember that just G with no line number defaults to the end of file?
  473.    
  474.     Cursor over to the misspelled procticing, using the arrow key or letter l.
  475.   Stop when the curor is positioned on the 'o'. Type r then a. You have just 
  476.   discovered another mnemonic command. r is used (in command mode to replace
  477.   a character).
  478.  
  479.     Next let's jump to line 4, where we repeated the phrase 'we insert more 
  480.   text'. You can get there by individual cursor movement, or you can type 4G
  481.   to go to line 4, and cursor over. You can also cursor straight down using
  482.   the down arrow (or letter j). There is no absolutely right way to get to
  483.   the point you wish to edit. Use them all. Soon you will discover certain 
  484.   methods are quicker in certain circumstances.
  485.    
  486.     However you get ther, once you are positioned on top of one of the w's in
  487.   one of the duplicate we's you can type x to delete any character under the
  488.   cursor or X for the character before the cursor.  You can thus delete each
  489.   mistyped (or in this case, extra charcater). You could do that. You could
  490.   also wipe them out a word at a time by typing dw (delete word - another nice
  491.   mnenomic).
  492.    
  493.     This process got rid of the extra phrase, but now we have a ragged, uneven
  494.   line. Unix provides tools for formatting text, but let's see what we can do
  495.   using just basic vi tools.
  496.   
  497.     Position your cursor at the end of line 4, by typing 4G to go to line 4, 
  498.   followed by $ to move the cursor to end of the line. Type a (insert after), 
  499.   followed by typing in 'further complicate the' 
  500.   
  501.     Hit escape to get out of the insert mode and back into command mode. Move
  502.   your cursor to the start of line five and delete the first three words using
  503.   dw (delete word). Jump to the end of line 5 (using $) and type a (insert 
  504.   after) and insert 'for edit practice'. Hit escape to return to command mode.
  505.   Position your cursor at the start or end of line 6 (or anywhere in line 6),
  506.   and type dd. Bingo! You just erased the entire line. What if you were on the
  507.   wrong line - or screwed up ANY of the session. If you caught your mistake as
  508.   you made it just type u to undo the last command. Later we will discover you
  509.   can atone for many sins, but for the moment lets stick with fixing one (the
  510.   last) oops! at a time.
  511.    
  512.     Your test file should now look like this:
  513.  
  514.        This is a test file to be used for practicing various
  515.        commands using the vi editer.
  516.                    
  517.        As we insert more text we also further complicate the
  518.        file and add to possibilities
  519.               
  520.        Later we will expand beyond one screen to test various
  521.        functions such as search and scrolling.
  522.             
  523.        This is one more line of text to mess with added with the o command.
  524.        ~
  525.        ~
  526.        ~
  527.        ~
  528.  
  529.     Save test, using either ZZ or :wq!
  530.    
  531.     The closing status will be something like:"test" 11 lines, 420 characters.
  532.   Again, don't worry about exact character count. One reason is I spaced my 
  533.   test file over to center it in this article. 
  534.        
  535.     Next session we are going to learn more about c, d, and a new friend y. We
  536.   are going to use y, along with p and start doing some serious text movement.
  537.   We are finally going to leave the basic stage and reach inside some of vi's
  538.   hidden goodies. We are going to have some fun.
  539.     We are finally going to go inside vi() and learn some tricks that give vi
  540.   power beyond mere editing.
  541.  
  542.     __         _  Gary Smith           * ... uunet!ddi1!lrark!glsrk!gars  *
  543.    / _' _   _ (_' P. O. Drawer 7680    *     nuucp%ddi1@uunet.UU.NET      *
  544.   /__/ (_|_/ '._) Little Rock,AR 72217 * GEnie Forth RT  &  Unix RT SysOp *
  545.   ---------------        - U. S. A. -  * ph:501-227-7817,fax:501-228-9374 *
  546.                                                         0800 - 1700 GMT -6
  547.  
  548.   ---------------    
  549.    REMINDER - This newsletter is being sent to you 'by request'. If you do
  550.   not wish to keep receiving it, e-mail a stop notice to GARS. On the other
  551.   hand, we would very much appreciate it if you would pass the word that we
  552.   do distribute this item near the tenth (10th) of the month of issue to any-
  553.   one on GEnie who requests it, and will gladly add any name that is requested
  554.   via the same route... e-mail to GARS.
  555.     P L E A S E  also remember contributions are most welcome. Please e-mail
  556.   items and/or suggestions to GARS.
  557.                                       
  558.   (EOF)
  559.                                   
  560.   Trademark and Copyright notices:
  561.   Unix is a Trademark of UNIX System Laboratories, Inc.; GEnie, LiveWire, and
  562.   RoundTable are Trademarks of General Electric Information Services  Company;
  563.   Xenix and ms-dos are Trademarks of  Microsoft  Corporation; NeXT and NeXTstep
  564.   are Trademarks of NeXT Computer Systems, Inc., Coherent is a Trademark of 
  565.   Mark Williams Company, Sun is a Trademark of Sun Microsystems, Inc, Sequent
  566.   is a Trademark of Sequent Computer Systems, Inc. 
  567.                                   
  568.   The contents of this newsletter are copyright (c) 1992 and may be copied whole
  569.   or in part only if  original  credit is included. The GEnie UNIX RoundTable is
  570.   not affiliated with AT&T or UNIX System Laboratories, Inc.
  571.  
  572.